import axios from 'axios'
import { ElMessage } from 'element-plus'
// 创建一个 Axios 实例
const apiRequest = axios.create({
	timeout: 10000, // 设置请求超时时间
})
apiRequest.defaults.baseURL = '/digitalApi'
// 添加请求拦截器
apiRequest.interceptors.request.use(
	function (config) {
		// 在请求发送之前，可以在这里修改 config 对象
		// 例如添加 token
		const token = localStorage.getItem('digital-token')
		if (token) {
			config.headers.token = token
		}
		return config
	},
	function (error) {
		// 请求拦截器的错误处理
		return Promise.reject(error)
	}
)

// 添加响应拦截器
apiRequest.interceptors.response.use(
	function (response) {
		// 在响应返回之前，可以在这里处理响应数据
		const { data: res } = response
		if (res.code == 300) {
			// 弹出消息提示
			ElMessage.error(res.msg || "请求异常...")
		}
		if (res.code == 301) {
			// 清除token 跳转登录页
		}
		return res
	},
	function (error) {
		// 响应拦截器的错误处理
		return Promise.reject(error)
	}
)

export default apiRequest

// GET请求
export function get (url, params) {
	return apiRequest({
		url,
		method: 'get',
		params
	})
}

// POST请求
export function post (url, data) {
	return apiRequest({
		url,
		method: 'post',
		data
	})
}
